<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="zh">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.5"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SWM34S_LVGL7.11_SWMUI: C:/Users/DELL/Desktop/Commit/lvgl/SWM34S_LVGL7.11_SWMUI_20230515/APP/BSP/dev_io_i2c.c 文件参考</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr id="projectrow">
  <td id="projectalign">
   <div id="projectname">SWM34S_LVGL7.11_SWMUI<span id="projectnumber">&#160;V7.9</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- 制作者 Doxygen 1.9.5 -->
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_0ca16891106f5a3e9ad635a0d6c5f98f.html">APP</a></li><li class="navelem"><a class="el" href="dir_4ca18d753a70f6eada20fde478bd3fc8.html">BSP</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#define-members">宏定义</a> &#124;
<a href="#func-members">函数</a>  </div>
  <div class="headertitle"><div class="title">dev_io_i2c.c 文件参考</div></div>
</div><!--header-->
<div class="contents">

<p>IO 模拟 IIC 通讯接口  
<a href="#details">更多...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="dev__io__i2c_8h_source.html">dev_io_i2c.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="dev__touch_8h_source.html">dev_touch.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="dev__io_8h_source.html">dev_io.h</a>&quot;</code><br />
</div><div class="textblock"><div class="dynheader">
dev_io_i2c.c 的引用(Include)关系图:</div>
<div class="dyncontent">
<div class="center"><img src="dev__io__i2c_8c__incl.png" border="0" usemap="#a_c_1_2_users_2_d_e_l_l_2_desktop_2_commit_2lvgl_2_s_w_m34_s___l_v_g_l7_811___s_w_m_u_i__20230515_2_a_p_p_2_b_s_p_2dev__io__i2c_8c" alt=""/></div>
<map name="a_c_1_2_users_2_d_e_l_l_2_desktop_2_commit_2lvgl_2_s_w_m34_s___l_v_g_l7_811___s_w_m_u_i__20230515_2_a_p_p_2_b_s_p_2dev__io__i2c_8c" id="a_c_1_2_users_2_d_e_l_l_2_desktop_2_commit_2lvgl_2_s_w_m34_s___l_v_g_l7_811___s_w_m_u_i__20230515_2_a_p_p_2_b_s_p_2dev__io__i2c_8c">
<area shape="rect" title="IO 模拟 IIC 通讯接口" alt="" coords="46,5,269,75"/>
<area shape="rect" href="dev__io__i2c_8h.html" title="IO 模拟 IIC 通讯接口" alt="" coords="5,123,99,148"/>
<area shape="rect" href="dev__touch_8h.html" title="TP 触摸设备驱动层" alt="" coords="216,123,307,148"/>
<area shape="rect" href="dev__io_8h.html" title="IO 模拟外设功能底层操作宏, 用于对接[外设驱动层], [用户层]应使用[驱动层]的接口, 不宜直接使用本模块" alt="" coords="123,123,192,148"/>
<area shape="rect" title=" " alt="" coords="19,196,85,221"/>
<area shape="rect" title=" " alt="" coords="114,196,201,221"/>
<area shape="rect" href="version_8h.html" title="版本/目标控制" alt="" coords="225,196,298,221"/>
</map>
</div>
</div>
<p><a href="dev__io__i2c_8c_source.html">浏览源代码.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="define-members" name="define-members"></a>
宏定义</h2></td></tr>
<tr class="memitem:a6dc9935cfe8b7dc43a460cebc17eb21d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dev__io__i2c_8c.html#a6dc9935cfe8b7dc43a460cebc17eb21d">IO_I2C_GPIO_SDA</a>&#160;&#160;&#160;<a class="el" href="dev__touch_8h.html#a2430e500da89d3deb28fe4ba6d85cbeb">TP_GPIO_SDA</a></td></tr>
<tr class="separator:a6dc9935cfe8b7dc43a460cebc17eb21d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a31489a7cb45fbeca95611ec3cf1b7840"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dev__io__i2c_8c.html#a31489a7cb45fbeca95611ec3cf1b7840">IO_I2C_PIN_SDA</a>&#160;&#160;&#160;<a class="el" href="dev__touch_8h.html#aef519ccca134ad2b0416daacf1fe0696">TP_PIN_SDA</a></td></tr>
<tr class="separator:a31489a7cb45fbeca95611ec3cf1b7840"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abb391ccbf9ba2ae3a7d1988842623a8e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dev__io__i2c_8c.html#abb391ccbf9ba2ae3a7d1988842623a8e">IO_I2C_GPIO_SCL</a>&#160;&#160;&#160;<a class="el" href="dev__touch_8h.html#a1e0ab863f65661b4309af875ec9e6d0d">TP_GPIO_SCL</a></td></tr>
<tr class="separator:abb391ccbf9ba2ae3a7d1988842623a8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a28fb2162693faeed9d0eb9a8ff505ae2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dev__io__i2c_8c.html#a28fb2162693faeed9d0eb9a8ff505ae2">IO_I2C_PIN_SCL</a>&#160;&#160;&#160;<a class="el" href="dev__touch_8h.html#adfe2cb63b872519329bf1ad71284c099">TP_PIN_SCL</a></td></tr>
<tr class="separator:a28fb2162693faeed9d0eb9a8ff505ae2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a47b137463bffebf7af6bd74278d8f8c3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dev__io__i2c_8c.html#a47b137463bffebf7af6bd74278d8f8c3">IO_I2C_SDA_L</a>()&#160;&#160;&#160;<a class="el" href="dev__io_8h.html#a96b4afe19e3f086e8b63be4f58797a71">IO_SET_L</a>(<a class="el" href="dev__io__i2c_8c.html#a6dc9935cfe8b7dc43a460cebc17eb21d">IO_I2C_GPIO_SDA</a>, <a class="el" href="dev__io__i2c_8c.html#a31489a7cb45fbeca95611ec3cf1b7840">IO_I2C_PIN_SDA</a>)</td></tr>
<tr class="separator:a47b137463bffebf7af6bd74278d8f8c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4aebdb53d1294c3008175592f73fc586"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dev__io__i2c_8c.html#a4aebdb53d1294c3008175592f73fc586">IO_I2C_SDA_H</a>()&#160;&#160;&#160;<a class="el" href="dev__io_8h.html#a2b996c7f57f00197b2a21ec4e00265d0">IO_SET_H</a>(<a class="el" href="dev__io__i2c_8c.html#a6dc9935cfe8b7dc43a460cebc17eb21d">IO_I2C_GPIO_SDA</a>, <a class="el" href="dev__io__i2c_8c.html#a31489a7cb45fbeca95611ec3cf1b7840">IO_I2C_PIN_SDA</a>)</td></tr>
<tr class="separator:a4aebdb53d1294c3008175592f73fc586"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89365b46eef744394b5047c523748664"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dev__io__i2c_8c.html#a89365b46eef744394b5047c523748664">IO_I2C_SCL_L</a>()&#160;&#160;&#160;<a class="el" href="dev__io_8h.html#a96b4afe19e3f086e8b63be4f58797a71">IO_SET_L</a>(<a class="el" href="dev__io__i2c_8c.html#abb391ccbf9ba2ae3a7d1988842623a8e">IO_I2C_GPIO_SCL</a>, <a class="el" href="dev__io__i2c_8c.html#a28fb2162693faeed9d0eb9a8ff505ae2">IO_I2C_PIN_SCL</a>)</td></tr>
<tr class="separator:a89365b46eef744394b5047c523748664"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a48fb4a6a453531b45b0fe78f0649e2d3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dev__io__i2c_8c.html#a48fb4a6a453531b45b0fe78f0649e2d3">IO_I2C_SCL_H</a>()&#160;&#160;&#160;<a class="el" href="dev__io_8h.html#a2b996c7f57f00197b2a21ec4e00265d0">IO_SET_H</a>(<a class="el" href="dev__io__i2c_8c.html#abb391ccbf9ba2ae3a7d1988842623a8e">IO_I2C_GPIO_SCL</a>, <a class="el" href="dev__io__i2c_8c.html#a28fb2162693faeed9d0eb9a8ff505ae2">IO_I2C_PIN_SCL</a>)</td></tr>
<tr class="separator:a48fb4a6a453531b45b0fe78f0649e2d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abdf5284b11e20fc99af45603c3d9fd8b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dev__io__i2c_8c.html#abdf5284b11e20fc99af45603c3d9fd8b">IO_I2C_SDA_DIR_I</a>()&#160;&#160;&#160;<a class="el" href="dev__io_8h.html#a171b4c64b86b9c81fdab4fb5c91abda3">IO_DIR_I</a>(<a class="el" href="dev__io__i2c_8c.html#a6dc9935cfe8b7dc43a460cebc17eb21d">IO_I2C_GPIO_SDA</a>, <a class="el" href="dev__io__i2c_8c.html#a31489a7cb45fbeca95611ec3cf1b7840">IO_I2C_PIN_SDA</a>)</td></tr>
<tr class="separator:abdf5284b11e20fc99af45603c3d9fd8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeccdf57dce6943953940758638ef7355"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dev__io__i2c_8c.html#aeccdf57dce6943953940758638ef7355">IO_I2C_SDA_DIR_O</a>()&#160;&#160;&#160;<a class="el" href="dev__io_8h.html#a0035ca7a6992ee60ccd0bab873012994">IO_DIR_O</a>(<a class="el" href="dev__io__i2c_8c.html#a6dc9935cfe8b7dc43a460cebc17eb21d">IO_I2C_GPIO_SDA</a>, <a class="el" href="dev__io__i2c_8c.html#a31489a7cb45fbeca95611ec3cf1b7840">IO_I2C_PIN_SDA</a>)</td></tr>
<tr class="separator:aeccdf57dce6943953940758638ef7355"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a01c3892c16d6330e486637967ab0289b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dev__io__i2c_8c.html#a01c3892c16d6330e486637967ab0289b">MAX_RETRY</a>&#160;&#160;&#160;(3)</td></tr>
<tr class="memdesc:a01c3892c16d6330e486637967ab0289b"><td class="mdescLeft">&#160;</td><td class="mdescRight">错误重试次数上限  <a href="dev__io__i2c_8c.html#a01c3892c16d6330e486637967ab0289b">更多...</a><br /></td></tr>
<tr class="separator:a01c3892c16d6330e486637967ab0289b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
函数</h2></td></tr>
<tr class="memitem:abb9c2429dbe2c1095dc3ec66a0b79a11"><td class="memItemLeft" align="right" valign="top">static uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dev__io__i2c_8c.html#abb9c2429dbe2c1095dc3ec66a0b79a11">io_i2c_start_signal</a> (void)</td></tr>
<tr class="memdesc:abb9c2429dbe2c1095dc3ec66a0b79a11"><td class="mdescLeft">&#160;</td><td class="mdescRight">I2C 总线启动前仲裁, 若总线(高电平)空闲则发起总线起始时序  <a href="dev__io__i2c_8c.html#abb9c2429dbe2c1095dc3ec66a0b79a11">更多...</a><br /></td></tr>
<tr class="separator:abb9c2429dbe2c1095dc3ec66a0b79a11"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2f2fd2dc0cabe8d5843a078348d9920f"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dev__io__i2c_8c.html#a2f2fd2dc0cabe8d5843a078348d9920f">io_i2c_stop_signal</a> (void)</td></tr>
<tr class="memdesc:a2f2fd2dc0cabe8d5843a078348d9920f"><td class="mdescLeft">&#160;</td><td class="mdescRight">IIC 主设备产生停止信号  <a href="dev__io__i2c_8c.html#a2f2fd2dc0cabe8d5843a078348d9920f">更多...</a><br /></td></tr>
<tr class="separator:a2f2fd2dc0cabe8d5843a078348d9920f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a507c871d4232488d9f36c335cea78bad"><td class="memItemLeft" align="right" valign="top">static uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dev__io__i2c_8c.html#a507c871d4232488d9f36c335cea78bad">io_i2c_wait_ack</a> (void)</td></tr>
<tr class="memdesc:a507c871d4232488d9f36c335cea78bad"><td class="mdescLeft">&#160;</td><td class="mdescRight">I2C 主设备接收应答信号  <a href="dev__io__i2c_8c.html#a507c871d4232488d9f36c335cea78bad">更多...</a><br /></td></tr>
<tr class="separator:a507c871d4232488d9f36c335cea78bad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a95625ec003f9bd0e827493aa2465f483"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dev__io__i2c_8c.html#a95625ec003f9bd0e827493aa2465f483">io_i2c_send_ack</a> (uint8_t ack)</td></tr>
<tr class="memdesc:a95625ec003f9bd0e827493aa2465f483"><td class="mdescLeft">&#160;</td><td class="mdescRight">I2C 主设备发送应答信号  <a href="dev__io__i2c_8c.html#a95625ec003f9bd0e827493aa2465f483">更多...</a><br /></td></tr>
<tr class="separator:a95625ec003f9bd0e827493aa2465f483"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab7222883cb247799343ee48f43c677af"><td class="memItemLeft" align="right" valign="top">static uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dev__io__i2c_8c.html#ab7222883cb247799343ee48f43c677af">io_i2c_recv_byte</a> (void)</td></tr>
<tr class="memdesc:ab7222883cb247799343ee48f43c677af"><td class="mdescLeft">&#160;</td><td class="mdescRight">I2C 主设备接收 8bit 数据  <a href="dev__io__i2c_8c.html#ab7222883cb247799343ee48f43c677af">更多...</a><br /></td></tr>
<tr class="separator:ab7222883cb247799343ee48f43c677af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a268a94eb25b4c8a9d88a83259930b2df"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dev__io__i2c_8c.html#a268a94eb25b4c8a9d88a83259930b2df">io_i2c_send_byte</a> (uint8_t data)</td></tr>
<tr class="memdesc:a268a94eb25b4c8a9d88a83259930b2df"><td class="mdescLeft">&#160;</td><td class="mdescRight">I2C 主设备传输 8 位数据  <a href="dev__io__i2c_8c.html#a268a94eb25b4c8a9d88a83259930b2df">更多...</a><br /></td></tr>
<tr class="separator:a268a94eb25b4c8a9d88a83259930b2df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab80cac38a78cf222153cd721d4801a3a"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dev__io__i2c_8c.html#ab80cac38a78cf222153cd721d4801a3a">io_i2c_delay</a> (void)</td></tr>
<tr class="memdesc:ab80cac38a78cf222153cd721d4801a3a"><td class="mdescLeft">&#160;</td><td class="mdescRight">IIC 通讯的延时保持  <a href="dev__io__i2c_8c.html#ab80cac38a78cf222153cd721d4801a3a">更多...</a><br /></td></tr>
<tr class="separator:ab80cac38a78cf222153cd721d4801a3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af312bd95bfab5d6c323eb36deea573cf"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dev__io__i2c_8c.html#af312bd95bfab5d6c323eb36deea573cf">io_i2c_start</a> (uint8_t addr, uint8_t wait)</td></tr>
<tr class="memdesc:af312bd95bfab5d6c323eb36deea573cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">IO 模拟标准 I2C, 主设备产生起始信号并发送设备地址  <a href="dev__io__i2c_8c.html#af312bd95bfab5d6c323eb36deea573cf">更多...</a><br /></td></tr>
<tr class="separator:af312bd95bfab5d6c323eb36deea573cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a18a19719c37d180525d3ad812408c62a"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dev__io__i2c_8c.html#a18a19719c37d180525d3ad812408c62a">io_i2c_read</a> (uint8_t ack, uint8_t wait)</td></tr>
<tr class="memdesc:a18a19719c37d180525d3ad812408c62a"><td class="mdescLeft">&#160;</td><td class="mdescRight">IO 模拟标准 I2C, 主设备读取一个数据  <a href="dev__io__i2c_8c.html#a18a19719c37d180525d3ad812408c62a">更多...</a><br /></td></tr>
<tr class="separator:a18a19719c37d180525d3ad812408c62a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4d0792f91f99fe78d977675f315b8b99"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dev__io__i2c_8c.html#a4d0792f91f99fe78d977675f315b8b99">io_i2c_write</a> (uint8_t data, uint8_t wait)</td></tr>
<tr class="memdesc:a4d0792f91f99fe78d977675f315b8b99"><td class="mdescLeft">&#160;</td><td class="mdescRight">IO 模拟标准 I2C, 主设备写入一个数据  <a href="dev__io__i2c_8c.html#a4d0792f91f99fe78d977675f315b8b99">更多...</a><br /></td></tr>
<tr class="separator:a4d0792f91f99fe78d977675f315b8b99"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:addb2a5d40257d803646950da9167bccb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dev__io__i2c_8c.html#addb2a5d40257d803646950da9167bccb">io_i2c_stop</a> (uint8_t wait)</td></tr>
<tr class="memdesc:addb2a5d40257d803646950da9167bccb"><td class="mdescLeft">&#160;</td><td class="mdescRight">IO 模拟标准 I2C, 主设备产生停止信号  <a href="dev__io__i2c_8c.html#addb2a5d40257d803646950da9167bccb">更多...</a><br /></td></tr>
<tr class="separator:addb2a5d40257d803646950da9167bccb"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">详细描述</h2>
<div class="textblock"><p >IO 模拟 IIC 通讯接口 </p>
<p >/ </p><dl class="section since"><dt>自从</dt><dd>Change Logs: Date Author Notes 2022-12-08 rk the first version 2023-04-25 lzh 重写 </dd></dl>
<dl class="section remark"><dt>备注</dt><dd>后续增添超时抛出流程</dd></dl>
<dl class="section attention"><dt>注意</dt><dd></dd></dl>
<p>THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. AS A RESULT, SYNWIT SHALL NOT BE HELD LIABLE FOR ANY DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING INFORMATION CONTAINED HEREIN IN CONN- -ECTION WITH THEIR PRODUCTS.</p>
<dl class="section copyright"><dt>版权所有</dt><dd>2012 Synwit Technology </dd></dl>

<p class="definition">在文件 <a class="el" href="dev__io__i2c_8c_source.html">dev_io_i2c.c</a> 中定义.</p>
</div><h2 class="groupheader">宏定义说明</h2>
<a id="a6dc9935cfe8b7dc43a460cebc17eb21d" name="a6dc9935cfe8b7dc43a460cebc17eb21d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6dc9935cfe8b7dc43a460cebc17eb21d">&#9670;&#160;</a></span>IO_I2C_GPIO_SDA</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IO_I2C_GPIO_SDA&#160;&#160;&#160;<a class="el" href="dev__touch_8h.html#a2430e500da89d3deb28fe4ba6d85cbeb">TP_GPIO_SDA</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="dev__io__i2c_8c_source.html">dev_io_i2c.c</a> 第 <a class="el" href="dev__io__i2c_8c_source.html#l00031">31</a> 行定义.</p>

</div>
</div>
<a id="a31489a7cb45fbeca95611ec3cf1b7840" name="a31489a7cb45fbeca95611ec3cf1b7840"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a31489a7cb45fbeca95611ec3cf1b7840">&#9670;&#160;</a></span>IO_I2C_PIN_SDA</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IO_I2C_PIN_SDA&#160;&#160;&#160;<a class="el" href="dev__touch_8h.html#aef519ccca134ad2b0416daacf1fe0696">TP_PIN_SDA</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="dev__io__i2c_8c_source.html">dev_io_i2c.c</a> 第 <a class="el" href="dev__io__i2c_8c_source.html#l00032">32</a> 行定义.</p>

</div>
</div>
<a id="abb391ccbf9ba2ae3a7d1988842623a8e" name="abb391ccbf9ba2ae3a7d1988842623a8e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abb391ccbf9ba2ae3a7d1988842623a8e">&#9670;&#160;</a></span>IO_I2C_GPIO_SCL</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IO_I2C_GPIO_SCL&#160;&#160;&#160;<a class="el" href="dev__touch_8h.html#a1e0ab863f65661b4309af875ec9e6d0d">TP_GPIO_SCL</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="dev__io__i2c_8c_source.html">dev_io_i2c.c</a> 第 <a class="el" href="dev__io__i2c_8c_source.html#l00034">34</a> 行定义.</p>

</div>
</div>
<a id="a28fb2162693faeed9d0eb9a8ff505ae2" name="a28fb2162693faeed9d0eb9a8ff505ae2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a28fb2162693faeed9d0eb9a8ff505ae2">&#9670;&#160;</a></span>IO_I2C_PIN_SCL</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IO_I2C_PIN_SCL&#160;&#160;&#160;<a class="el" href="dev__touch_8h.html#adfe2cb63b872519329bf1ad71284c099">TP_PIN_SCL</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="dev__io__i2c_8c_source.html">dev_io_i2c.c</a> 第 <a class="el" href="dev__io__i2c_8c_source.html#l00035">35</a> 行定义.</p>

</div>
</div>
<a id="a47b137463bffebf7af6bd74278d8f8c3" name="a47b137463bffebf7af6bd74278d8f8c3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a47b137463bffebf7af6bd74278d8f8c3">&#9670;&#160;</a></span>IO_I2C_SDA_L</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IO_I2C_SDA_L</td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td>&#160;&#160;&#160;<a class="el" href="dev__io_8h.html#a96b4afe19e3f086e8b63be4f58797a71">IO_SET_L</a>(<a class="el" href="dev__io__i2c_8c.html#a6dc9935cfe8b7dc43a460cebc17eb21d">IO_I2C_GPIO_SDA</a>, <a class="el" href="dev__io__i2c_8c.html#a31489a7cb45fbeca95611ec3cf1b7840">IO_I2C_PIN_SDA</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="dev__io__i2c_8c_source.html">dev_io_i2c.c</a> 第 <a class="el" href="dev__io__i2c_8c_source.html#l00055">55</a> 行定义.</p>

</div>
</div>
<a id="a4aebdb53d1294c3008175592f73fc586" name="a4aebdb53d1294c3008175592f73fc586"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4aebdb53d1294c3008175592f73fc586">&#9670;&#160;</a></span>IO_I2C_SDA_H</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IO_I2C_SDA_H</td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td>&#160;&#160;&#160;<a class="el" href="dev__io_8h.html#a2b996c7f57f00197b2a21ec4e00265d0">IO_SET_H</a>(<a class="el" href="dev__io__i2c_8c.html#a6dc9935cfe8b7dc43a460cebc17eb21d">IO_I2C_GPIO_SDA</a>, <a class="el" href="dev__io__i2c_8c.html#a31489a7cb45fbeca95611ec3cf1b7840">IO_I2C_PIN_SDA</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="dev__io__i2c_8c_source.html">dev_io_i2c.c</a> 第 <a class="el" href="dev__io__i2c_8c_source.html#l00056">56</a> 行定义.</p>

</div>
</div>
<a id="a89365b46eef744394b5047c523748664" name="a89365b46eef744394b5047c523748664"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a89365b46eef744394b5047c523748664">&#9670;&#160;</a></span>IO_I2C_SCL_L</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IO_I2C_SCL_L</td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td>&#160;&#160;&#160;<a class="el" href="dev__io_8h.html#a96b4afe19e3f086e8b63be4f58797a71">IO_SET_L</a>(<a class="el" href="dev__io__i2c_8c.html#abb391ccbf9ba2ae3a7d1988842623a8e">IO_I2C_GPIO_SCL</a>, <a class="el" href="dev__io__i2c_8c.html#a28fb2162693faeed9d0eb9a8ff505ae2">IO_I2C_PIN_SCL</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="dev__io__i2c_8c_source.html">dev_io_i2c.c</a> 第 <a class="el" href="dev__io__i2c_8c_source.html#l00058">58</a> 行定义.</p>

</div>
</div>
<a id="a48fb4a6a453531b45b0fe78f0649e2d3" name="a48fb4a6a453531b45b0fe78f0649e2d3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a48fb4a6a453531b45b0fe78f0649e2d3">&#9670;&#160;</a></span>IO_I2C_SCL_H</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IO_I2C_SCL_H</td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td>&#160;&#160;&#160;<a class="el" href="dev__io_8h.html#a2b996c7f57f00197b2a21ec4e00265d0">IO_SET_H</a>(<a class="el" href="dev__io__i2c_8c.html#abb391ccbf9ba2ae3a7d1988842623a8e">IO_I2C_GPIO_SCL</a>, <a class="el" href="dev__io__i2c_8c.html#a28fb2162693faeed9d0eb9a8ff505ae2">IO_I2C_PIN_SCL</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="dev__io__i2c_8c_source.html">dev_io_i2c.c</a> 第 <a class="el" href="dev__io__i2c_8c_source.html#l00059">59</a> 行定义.</p>

</div>
</div>
<a id="abdf5284b11e20fc99af45603c3d9fd8b" name="abdf5284b11e20fc99af45603c3d9fd8b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abdf5284b11e20fc99af45603c3d9fd8b">&#9670;&#160;</a></span>IO_I2C_SDA_DIR_I</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IO_I2C_SDA_DIR_I</td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td>&#160;&#160;&#160;<a class="el" href="dev__io_8h.html#a171b4c64b86b9c81fdab4fb5c91abda3">IO_DIR_I</a>(<a class="el" href="dev__io__i2c_8c.html#a6dc9935cfe8b7dc43a460cebc17eb21d">IO_I2C_GPIO_SDA</a>, <a class="el" href="dev__io__i2c_8c.html#a31489a7cb45fbeca95611ec3cf1b7840">IO_I2C_PIN_SDA</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="dev__io__i2c_8c_source.html">dev_io_i2c.c</a> 第 <a class="el" href="dev__io__i2c_8c_source.html#l00061">61</a> 行定义.</p>

</div>
</div>
<a id="aeccdf57dce6943953940758638ef7355" name="aeccdf57dce6943953940758638ef7355"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeccdf57dce6943953940758638ef7355">&#9670;&#160;</a></span>IO_I2C_SDA_DIR_O</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define IO_I2C_SDA_DIR_O</td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td>&#160;&#160;&#160;<a class="el" href="dev__io_8h.html#a0035ca7a6992ee60ccd0bab873012994">IO_DIR_O</a>(<a class="el" href="dev__io__i2c_8c.html#a6dc9935cfe8b7dc43a460cebc17eb21d">IO_I2C_GPIO_SDA</a>, <a class="el" href="dev__io__i2c_8c.html#a31489a7cb45fbeca95611ec3cf1b7840">IO_I2C_PIN_SDA</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="dev__io__i2c_8c_source.html">dev_io_i2c.c</a> 第 <a class="el" href="dev__io__i2c_8c_source.html#l00062">62</a> 行定义.</p>

</div>
</div>
<a id="a01c3892c16d6330e486637967ab0289b" name="a01c3892c16d6330e486637967ab0289b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a01c3892c16d6330e486637967ab0289b">&#9670;&#160;</a></span>MAX_RETRY</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MAX_RETRY&#160;&#160;&#160;(3)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>错误重试次数上限 </p>

<p class="definition">在文件 <a class="el" href="dev__io__i2c_8c_source.html">dev_io_i2c.c</a> 第 <a class="el" href="dev__io__i2c_8c_source.html#l00065">65</a> 行定义.</p>

</div>
</div>
<h2 class="groupheader">函数说明</h2>
<a id="abb9c2429dbe2c1095dc3ec66a0b79a11" name="abb9c2429dbe2c1095dc3ec66a0b79a11"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abb9c2429dbe2c1095dc3ec66a0b79a11">&#9670;&#160;</a></span>io_i2c_start_signal()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static uint8_t io_i2c_start_signal </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>I2C 总线启动前仲裁, 若总线(高电平)空闲则发起总线起始时序 </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">/</td><td></td></tr>
  </table>
  </dd>
</dl>
<dl class="retval"><dt>返回值</dt><dd>
  <table class="retval">
    <tr><td class="paramname">0</td><td>: IIC_SDA 高电平表示总线空闲, 拉低占用总线并发送起始信号 </td></tr>
    <tr><td class="paramname">1</td><td>: IIC_SDA 低电平表示总线忙碌, 无法获取总线控制权</td></tr>
  </table>
  </dd>
</dl>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">/</td><td></td></tr>
  </table>
  </dd>
</dl>
<dl class="retval"><dt>返回值</dt><dd>
  <table class="retval">
    <tr><td class="paramname">1</td><td>: IIC_SDA 高电平表示总线空闲, 拉低占用总线并发送起始信号 </td></tr>
    <tr><td class="paramname">0</td><td>: IIC_SDA 低电平表示总线忙碌, 无法获取总线控制权 </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">在文件 <a class="el" href="dev__io__i2c_8c_source.html">dev_io_i2c.c</a> 第 <a class="el" href="dev__io__i2c_8c_source.html#l00193">193</a> 行定义.</p>
<div class="dynheader">
函数调用图:</div>
<div class="dyncontent">
<div class="center"><img src="dev__io__i2c_8c_abb9c2429dbe2c1095dc3ec66a0b79a11_cgraph.png" border="0" usemap="#adev__io__i2c_8c_abb9c2429dbe2c1095dc3ec66a0b79a11_cgraph" alt=""/></div>
<map name="adev__io__i2c_8c_abb9c2429dbe2c1095dc3ec66a0b79a11_cgraph" id="adev__io__i2c_8c_abb9c2429dbe2c1095dc3ec66a0b79a11_cgraph">
<area shape="rect" title="I2C 总线启动前仲裁, 若总线(高电平)空闲则发起总线起始时序" alt="" coords="5,5,136,31"/>
<area shape="rect" href="dev__io__i2c_8c.html#ab80cac38a78cf222153cd721d4801a3a" title="IIC 通讯的延时保持" alt="" coords="184,5,279,31"/>
</map>
</div>
<div class="dynheader">
这是这个函数的调用关系图:</div>
<div class="dyncontent">
<div class="center"><img src="dev__io__i2c_8c_abb9c2429dbe2c1095dc3ec66a0b79a11_icgraph.png" border="0" usemap="#adev__io__i2c_8c_abb9c2429dbe2c1095dc3ec66a0b79a11_icgraph" alt=""/></div>
<map name="adev__io__i2c_8c_abb9c2429dbe2c1095dc3ec66a0b79a11_icgraph" id="adev__io__i2c_8c_abb9c2429dbe2c1095dc3ec66a0b79a11_icgraph">
<area shape="rect" title="I2C 总线启动前仲裁, 若总线(高电平)空闲则发起总线起始时序" alt="" coords="143,5,273,31"/>
<area shape="rect" href="dev__io__i2c_8c.html#af312bd95bfab5d6c323eb36deea573cf" title="IO 模拟标准 I2C, 主设备产生起始信号并发送设备地址" alt="" coords="5,5,95,31"/>
</map>
</div>

</div>
</div>
<a id="a2f2fd2dc0cabe8d5843a078348d9920f" name="a2f2fd2dc0cabe8d5843a078348d9920f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2f2fd2dc0cabe8d5843a078348d9920f">&#9670;&#160;</a></span>io_i2c_stop_signal()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void io_i2c_stop_signal </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>IIC 主设备产生停止信号 </p>

<p class="definition">在文件 <a class="el" href="dev__io__i2c_8c_source.html">dev_io_i2c.c</a> 第 <a class="el" href="dev__io__i2c_8c_source.html#l00220">220</a> 行定义.</p>
<div class="dynheader">
函数调用图:</div>
<div class="dyncontent">
<div class="center"><img src="dev__io__i2c_8c_a2f2fd2dc0cabe8d5843a078348d9920f_cgraph.png" border="0" usemap="#adev__io__i2c_8c_a2f2fd2dc0cabe8d5843a078348d9920f_cgraph" alt=""/></div>
<map name="adev__io__i2c_8c_a2f2fd2dc0cabe8d5843a078348d9920f_cgraph" id="adev__io__i2c_8c_a2f2fd2dc0cabe8d5843a078348d9920f_cgraph">
<area shape="rect" title="IIC 主设备产生停止信号" alt="" coords="5,5,135,31"/>
<area shape="rect" href="dev__io__i2c_8c.html#ab80cac38a78cf222153cd721d4801a3a" title="IIC 通讯的延时保持" alt="" coords="183,5,277,31"/>
</map>
</div>
<div class="dynheader">
这是这个函数的调用关系图:</div>
<div class="dyncontent">
<div class="center"><img src="dev__io__i2c_8c_a2f2fd2dc0cabe8d5843a078348d9920f_icgraph.png" border="0" usemap="#adev__io__i2c_8c_a2f2fd2dc0cabe8d5843a078348d9920f_icgraph" alt=""/></div>
<map name="adev__io__i2c_8c_a2f2fd2dc0cabe8d5843a078348d9920f_icgraph" id="adev__io__i2c_8c_a2f2fd2dc0cabe8d5843a078348d9920f_icgraph">
<area shape="rect" title="IIC 主设备产生停止信号" alt="" coords="143,31,272,56"/>
<area shape="rect" href="dev__io__i2c_8c.html#af312bd95bfab5d6c323eb36deea573cf" title="IO 模拟标准 I2C, 主设备产生起始信号并发送设备地址" alt="" coords="5,5,95,31"/>
<area shape="rect" href="dev__io__i2c_8c.html#addb2a5d40257d803646950da9167bccb" title="IO 模拟标准 I2C, 主设备产生停止信号" alt="" coords="6,55,94,80"/>
</map>
</div>

</div>
</div>
<a id="a507c871d4232488d9f36c335cea78bad" name="a507c871d4232488d9f36c335cea78bad"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a507c871d4232488d9f36c335cea78bad">&#9670;&#160;</a></span>io_i2c_wait_ack()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static uint8_t io_i2c_wait_ack </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>I2C 主设备接收应答信号 </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">/</td><td></td></tr>
  </table>
  </dd>
</dl>
<dl class="retval"><dt>返回值</dt><dd>
  <table class="retval">
    <tr><td class="paramname">0</td><td>: IIC_SDA 返回低电平表示 ACK </td></tr>
    <tr><td class="paramname">1</td><td>: IIC_SDA 返回高电平表示 NACK</td></tr>
  </table>
  </dd>
</dl>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">/</td><td></td></tr>
  </table>
  </dd>
</dl>
<dl class="retval"><dt>返回值</dt><dd>
  <table class="retval">
    <tr><td class="paramname">1</td><td>: IIC_SDA 返回低电平表示 ACK </td></tr>
    <tr><td class="paramname">0</td><td>: IIC_SDA 返回高电平表示 NACK </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">在文件 <a class="el" href="dev__io__i2c_8c_source.html">dev_io_i2c.c</a> 第 <a class="el" href="dev__io__i2c_8c_source.html#l00244">244</a> 行定义.</p>
<div class="dynheader">
函数调用图:</div>
<div class="dyncontent">
<div class="center"><img src="dev__io__i2c_8c_a507c871d4232488d9f36c335cea78bad_cgraph.png" border="0" usemap="#adev__io__i2c_8c_a507c871d4232488d9f36c335cea78bad_cgraph" alt=""/></div>
<map name="adev__io__i2c_8c_a507c871d4232488d9f36c335cea78bad_cgraph" id="adev__io__i2c_8c_a507c871d4232488d9f36c335cea78bad_cgraph">
<area shape="rect" title="I2C 主设备接收应答信号" alt="" coords="5,5,120,31"/>
<area shape="rect" href="dev__io__i2c_8c.html#ab80cac38a78cf222153cd721d4801a3a" title="IIC 通讯的延时保持" alt="" coords="168,5,263,31"/>
</map>
</div>
<div class="dynheader">
这是这个函数的调用关系图:</div>
<div class="dyncontent">
<div class="center"><img src="dev__io__i2c_8c_a507c871d4232488d9f36c335cea78bad_icgraph.png" border="0" usemap="#adev__io__i2c_8c_a507c871d4232488d9f36c335cea78bad_icgraph" alt=""/></div>
<map name="adev__io__i2c_8c_a507c871d4232488d9f36c335cea78bad_icgraph" id="adev__io__i2c_8c_a507c871d4232488d9f36c335cea78bad_icgraph">
<area shape="rect" title="I2C 主设备接收应答信号" alt="" coords="144,31,259,56"/>
<area shape="rect" href="dev__io__i2c_8c.html#af312bd95bfab5d6c323eb36deea573cf" title="IO 模拟标准 I2C, 主设备产生起始信号并发送设备地址" alt="" coords="6,5,95,31"/>
<area shape="rect" href="dev__io__i2c_8c.html#a4d0792f91f99fe78d977675f315b8b99" title="IO 模拟标准 I2C, 主设备写入一个数据" alt="" coords="5,55,96,80"/>
</map>
</div>

</div>
</div>
<a id="a95625ec003f9bd0e827493aa2465f483" name="a95625ec003f9bd0e827493aa2465f483"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a95625ec003f9bd0e827493aa2465f483">&#9670;&#160;</a></span>io_i2c_send_ack()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void io_i2c_send_ack </td>
          <td>(</td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>ack</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>I2C 主设备发送应答信号 </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">0</td><td>: 发送 ACK </td></tr>
    <tr><td class="paramname">1</td><td>: 发送 NACK </td></tr>
  </table>
  </dd>
</dl>
<dl class="retval"><dt>返回值</dt><dd>
  <table class="retval">
    <tr><td class="paramname">/</td><td></td></tr>
  </table>
  </dd>
</dl>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">1</td><td>: 发送 ACK </td></tr>
    <tr><td class="paramname">0</td><td>: 发送 NACK </td></tr>
  </table>
  </dd>
</dl>
<dl class="retval"><dt>返回值</dt><dd>
  <table class="retval">
    <tr><td class="paramname">/</td><td></td></tr>
  </table>
  </dd>
</dl>

<p class="definition">在文件 <a class="el" href="dev__io__i2c_8c_source.html">dev_io_i2c.c</a> 第 <a class="el" href="dev__io__i2c_8c_source.html#l00270">270</a> 行定义.</p>
<div class="dynheader">
函数调用图:</div>
<div class="dyncontent">
<div class="center"><img src="dev__io__i2c_8c_a95625ec003f9bd0e827493aa2465f483_cgraph.png" border="0" usemap="#adev__io__i2c_8c_a95625ec003f9bd0e827493aa2465f483_cgraph" alt=""/></div>
<map name="adev__io__i2c_8c_a95625ec003f9bd0e827493aa2465f483_cgraph" id="adev__io__i2c_8c_a95625ec003f9bd0e827493aa2465f483_cgraph">
<area shape="rect" title="I2C 主设备发送应答信号" alt="" coords="5,5,124,31"/>
<area shape="rect" href="dev__io__i2c_8c.html#ab80cac38a78cf222153cd721d4801a3a" title="IIC 通讯的延时保持" alt="" coords="172,5,267,31"/>
</map>
</div>
<div class="dynheader">
这是这个函数的调用关系图:</div>
<div class="dyncontent">
<div class="center"><img src="dev__io__i2c_8c_a95625ec003f9bd0e827493aa2465f483_icgraph.png" border="0" usemap="#adev__io__i2c_8c_a95625ec003f9bd0e827493aa2465f483_icgraph" alt=""/></div>
<map name="adev__io__i2c_8c_a95625ec003f9bd0e827493aa2465f483_icgraph" id="adev__io__i2c_8c_a95625ec003f9bd0e827493aa2465f483_icgraph">
<area shape="rect" title="I2C 主设备发送应答信号" alt="" coords="141,5,260,31"/>
<area shape="rect" href="dev__io__i2c_8c.html#a18a19719c37d180525d3ad812408c62a" title="IO 模拟标准 I2C, 主设备读取一个数据" alt="" coords="5,5,93,31"/>
</map>
</div>

</div>
</div>
<a id="ab7222883cb247799343ee48f43c677af" name="ab7222883cb247799343ee48f43c677af"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab7222883cb247799343ee48f43c677af">&#9670;&#160;</a></span>io_i2c_recv_byte()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static uint8_t io_i2c_recv_byte </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>I2C 主设备接收 8bit 数据 </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">/</td><td></td></tr>
  </table>
  </dd>
</dl>
<dl class="retval"><dt>返回值</dt><dd>
  <table class="retval">
    <tr><td class="paramname">返回读取的数据值</td><td></td></tr>
  </table>
  </dd>
</dl>

<p class="definition">在文件 <a class="el" href="dev__io__i2c_8c_source.html">dev_io_i2c.c</a> 第 <a class="el" href="dev__io__i2c_8c_source.html#l00294">294</a> 行定义.</p>
<div class="dynheader">
函数调用图:</div>
<div class="dyncontent">
<div class="center"><img src="dev__io__i2c_8c_ab7222883cb247799343ee48f43c677af_cgraph.png" border="0" usemap="#adev__io__i2c_8c_ab7222883cb247799343ee48f43c677af_cgraph" alt=""/></div>
<map name="adev__io__i2c_8c_ab7222883cb247799343ee48f43c677af_cgraph" id="adev__io__i2c_8c_ab7222883cb247799343ee48f43c677af_cgraph">
<area shape="rect" title="I2C 主设备接收 8bit 数据" alt="" coords="5,5,124,31"/>
<area shape="rect" href="dev__io__i2c_8c.html#ab80cac38a78cf222153cd721d4801a3a" title="IIC 通讯的延时保持" alt="" coords="172,5,267,31"/>
</map>
</div>
<div class="dynheader">
这是这个函数的调用关系图:</div>
<div class="dyncontent">
<div class="center"><img src="dev__io__i2c_8c_ab7222883cb247799343ee48f43c677af_icgraph.png" border="0" usemap="#adev__io__i2c_8c_ab7222883cb247799343ee48f43c677af_icgraph" alt=""/></div>
<map name="adev__io__i2c_8c_ab7222883cb247799343ee48f43c677af_icgraph" id="adev__io__i2c_8c_ab7222883cb247799343ee48f43c677af_icgraph">
<area shape="rect" title="I2C 主设备接收 8bit 数据" alt="" coords="141,5,260,31"/>
<area shape="rect" href="dev__io__i2c_8c.html#a18a19719c37d180525d3ad812408c62a" title="IO 模拟标准 I2C, 主设备读取一个数据" alt="" coords="5,5,93,31"/>
</map>
</div>

</div>
</div>
<a id="a268a94eb25b4c8a9d88a83259930b2df" name="a268a94eb25b4c8a9d88a83259930b2df"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a268a94eb25b4c8a9d88a83259930b2df">&#9670;&#160;</a></span>io_i2c_send_byte()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void io_i2c_send_byte </td>
          <td>(</td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>data</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>I2C 主设备传输 8 位数据 </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">数据</td><td></td></tr>
  </table>
  </dd>
</dl>
<dl class="retval"><dt>返回值</dt><dd>
  <table class="retval">
    <tr><td class="paramname">/</td><td></td></tr>
  </table>
  </dd>
</dl>

<p class="definition">在文件 <a class="el" href="dev__io__i2c_8c_source.html">dev_io_i2c.c</a> 第 <a class="el" href="dev__io__i2c_8c_source.html#l00323">323</a> 行定义.</p>
<div class="dynheader">
函数调用图:</div>
<div class="dyncontent">
<div class="center"><img src="dev__io__i2c_8c_a268a94eb25b4c8a9d88a83259930b2df_cgraph.png" border="0" usemap="#adev__io__i2c_8c_a268a94eb25b4c8a9d88a83259930b2df_cgraph" alt=""/></div>
<map name="adev__io__i2c_8c_a268a94eb25b4c8a9d88a83259930b2df_cgraph" id="adev__io__i2c_8c_a268a94eb25b4c8a9d88a83259930b2df_cgraph">
<area shape="rect" title="I2C 主设备传输 8 位数据" alt="" coords="5,5,128,31"/>
<area shape="rect" href="dev__io__i2c_8c.html#ab80cac38a78cf222153cd721d4801a3a" title="IIC 通讯的延时保持" alt="" coords="176,5,271,31"/>
</map>
</div>
<div class="dynheader">
这是这个函数的调用关系图:</div>
<div class="dyncontent">
<div class="center"><img src="dev__io__i2c_8c_a268a94eb25b4c8a9d88a83259930b2df_icgraph.png" border="0" usemap="#adev__io__i2c_8c_a268a94eb25b4c8a9d88a83259930b2df_icgraph" alt=""/></div>
<map name="adev__io__i2c_8c_a268a94eb25b4c8a9d88a83259930b2df_icgraph" id="adev__io__i2c_8c_a268a94eb25b4c8a9d88a83259930b2df_icgraph">
<area shape="rect" title="I2C 主设备传输 8 位数据" alt="" coords="144,31,267,56"/>
<area shape="rect" href="dev__io__i2c_8c.html#af312bd95bfab5d6c323eb36deea573cf" title="IO 模拟标准 I2C, 主设备产生起始信号并发送设备地址" alt="" coords="6,5,95,31"/>
<area shape="rect" href="dev__io__i2c_8c.html#a4d0792f91f99fe78d977675f315b8b99" title="IO 模拟标准 I2C, 主设备写入一个数据" alt="" coords="5,55,96,80"/>
</map>
</div>

</div>
</div>
<a id="ab80cac38a78cf222153cd721d4801a3a" name="ab80cac38a78cf222153cd721d4801a3a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab80cac38a78cf222153cd721d4801a3a">&#9670;&#160;</a></span>io_i2c_delay()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void io_i2c_delay </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>IIC 通讯的延时保持 </p>
<dl class="section note"><dt>注解</dt><dd>因编译优化等级可能会调整, 延时必须充分 </dd></dl>

<p class="definition">在文件 <a class="el" href="dev__io__i2c_8c_source.html">dev_io_i2c.c</a> 第 <a class="el" href="dev__io__i2c_8c_source.html#l00117">117</a> 行定义.</p>
<div class="dynheader">
这是这个函数的调用关系图:</div>
<div class="dyncontent">
<div class="center"><img src="dev__io__i2c_8c_ab80cac38a78cf222153cd721d4801a3a_icgraph.png" border="0" usemap="#adev__io__i2c_8c_ab80cac38a78cf222153cd721d4801a3a_icgraph" alt=""/></div>
<map name="adev__io__i2c_8c_ab80cac38a78cf222153cd721d4801a3a_icgraph" id="adev__io__i2c_8c_ab80cac38a78cf222153cd721d4801a3a_icgraph">
<area shape="rect" title="IIC 通讯的延时保持" alt="" coords="323,129,417,155"/>
<area shape="rect" href="dev__io__i2c_8c.html#ab7222883cb247799343ee48f43c677af" title="I2C 主设备接收 8bit 数据" alt="" coords="150,5,269,31"/>
<area shape="rect" href="dev__io__i2c_8c.html#a95625ec003f9bd0e827493aa2465f483" title="I2C 主设备发送应答信号" alt="" coords="150,55,269,80"/>
<area shape="rect" href="dev__io__i2c_8c.html#a268a94eb25b4c8a9d88a83259930b2df" title="I2C 主设备传输 8 位数据" alt="" coords="148,203,271,228"/>
<area shape="rect" href="dev__io__i2c_8c.html#abb9c2429dbe2c1095dc3ec66a0b79a11" title="I2C 总线启动前仲裁, 若总线(高电平)空闲则发起总线起始时序" alt="" coords="144,153,275,179"/>
<area shape="rect" href="dev__io__i2c_8c.html#a2f2fd2dc0cabe8d5843a078348d9920f" title="IIC 主设备产生停止信号" alt="" coords="145,104,274,129"/>
<area shape="rect" href="dev__io__i2c_8c.html#a507c871d4232488d9f36c335cea78bad" title="I2C 主设备接收应答信号" alt="" coords="152,252,267,277"/>
<area shape="rect" href="dev__io__i2c_8c.html#a18a19719c37d180525d3ad812408c62a" title="IO 模拟标准 I2C, 主设备读取一个数据" alt="" coords="7,31,95,56"/>
<area shape="rect" href="dev__io__i2c_8c.html#af312bd95bfab5d6c323eb36deea573cf" title="IO 模拟标准 I2C, 主设备产生起始信号并发送设备地址" alt="" coords="6,153,95,179"/>
<area shape="rect" href="dev__io__i2c_8c.html#a4d0792f91f99fe78d977675f315b8b99" title="IO 模拟标准 I2C, 主设备写入一个数据" alt="" coords="5,227,96,252"/>
<area shape="rect" href="dev__io__i2c_8c.html#addb2a5d40257d803646950da9167bccb" title="IO 模拟标准 I2C, 主设备产生停止信号" alt="" coords="7,104,95,129"/>
</map>
</div>

</div>
</div>
<a id="af312bd95bfab5d6c323eb36deea573cf" name="af312bd95bfab5d6c323eb36deea573cf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af312bd95bfab5d6c323eb36deea573cf">&#9670;&#160;</a></span>io_i2c_start()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint8_t io_i2c_start </td>
          <td>(</td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>addr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>wait</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>IO 模拟标准 I2C, 主设备产生起始信号并发送设备地址 </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">addr</td><td>: 传输从设备地址数据 </td></tr>
    <tr><td class="paramname">wait</td><td>: 此参数暂无作用, 是为了与硬件 I2C 库函数接口保持一致 </td></tr>
  </table>
  </dd>
</dl>
<dl class="retval"><dt>返回值</dt><dd>
  <table class="retval">
    <tr><td class="paramname">1</td><td>: 接收到 ACK </td></tr>
    <tr><td class="paramname">0</td><td>: 接收到 NACK </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">在文件 <a class="el" href="dev__io__i2c_8c_source.html">dev_io_i2c.c</a> 第 <a class="el" href="dev__io__i2c_8c_source.html#l00132">132</a> 行定义.</p>
<div class="dynheader">
函数调用图:</div>
<div class="dyncontent">
<div class="center"><img src="dev__io__i2c_8c_af312bd95bfab5d6c323eb36deea573cf_cgraph.png" border="0" usemap="#adev__io__i2c_8c_af312bd95bfab5d6c323eb36deea573cf_cgraph" alt=""/></div>
<map name="adev__io__i2c_8c_af312bd95bfab5d6c323eb36deea573cf_cgraph" id="adev__io__i2c_8c_af312bd95bfab5d6c323eb36deea573cf_cgraph">
<area shape="rect" title="IO 模拟标准 I2C, 主设备产生起始信号并发送设备地址" alt="" coords="5,80,95,105"/>
<area shape="rect" href="dev__io__i2c_8c.html#a268a94eb25b4c8a9d88a83259930b2df" title="I2C 主设备传输 8 位数据" alt="" coords="147,5,269,31"/>
<area shape="rect" href="dev__io__i2c_8c.html#abb9c2429dbe2c1095dc3ec66a0b79a11" title="I2C 总线启动前仲裁, 若总线(高电平)空闲则发起总线起始时序" alt="" coords="143,55,273,80"/>
<area shape="rect" href="dev__io__i2c_8c.html#a2f2fd2dc0cabe8d5843a078348d9920f" title="IIC 主设备产生停止信号" alt="" coords="143,104,273,129"/>
<area shape="rect" href="dev__io__i2c_8c.html#a507c871d4232488d9f36c335cea78bad" title="I2C 主设备接收应答信号" alt="" coords="151,153,265,179"/>
<area shape="rect" href="dev__io__i2c_8c.html#ab80cac38a78cf222153cd721d4801a3a" title="IIC 通讯的延时保持" alt="" coords="321,80,416,105"/>
</map>
</div>

</div>
</div>
<a id="a18a19719c37d180525d3ad812408c62a" name="a18a19719c37d180525d3ad812408c62a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a18a19719c37d180525d3ad812408c62a">&#9670;&#160;</a></span>io_i2c_read()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint8_t io_i2c_read </td>
          <td>(</td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>ack</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>wait</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>IO 模拟标准 I2C, 主设备读取一个数据 </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">ack</td><td>: 1 发送ACK 0 发送NACK </td></tr>
    <tr><td class="paramname">wait</td><td>: 此参数暂无作用, 是为了与硬件 I2C 库函数接口保持一致 </td></tr>
  </table>
  </dd>
</dl>
<dl class="retval"><dt>返回值</dt><dd>
  <table class="retval">
    <tr><td class="paramname">读取到的数据</td><td></td></tr>
  </table>
  </dd>
</dl>

<p class="definition">在文件 <a class="el" href="dev__io__i2c_8c_source.html">dev_io_i2c.c</a> 第 <a class="el" href="dev__io__i2c_8c_source.html#l00153">153</a> 行定义.</p>
<div class="dynheader">
函数调用图:</div>
<div class="dyncontent">
<div class="center"><img src="dev__io__i2c_8c_a18a19719c37d180525d3ad812408c62a_cgraph.png" border="0" usemap="#adev__io__i2c_8c_a18a19719c37d180525d3ad812408c62a_cgraph" alt=""/></div>
<map name="adev__io__i2c_8c_a18a19719c37d180525d3ad812408c62a_cgraph" id="adev__io__i2c_8c_a18a19719c37d180525d3ad812408c62a_cgraph">
<area shape="rect" title="IO 模拟标准 I2C, 主设备读取一个数据" alt="" coords="5,31,93,56"/>
<area shape="rect" href="dev__io__i2c_8c.html#ab7222883cb247799343ee48f43c677af" title="I2C 主设备接收 8bit 数据" alt="" coords="141,5,260,31"/>
<area shape="rect" href="dev__io__i2c_8c.html#a95625ec003f9bd0e827493aa2465f483" title="I2C 主设备发送应答信号" alt="" coords="141,55,260,80"/>
<area shape="rect" href="dev__io__i2c_8c.html#ab80cac38a78cf222153cd721d4801a3a" title="IIC 通讯的延时保持" alt="" coords="308,31,403,56"/>
</map>
</div>

</div>
</div>
<a id="a4d0792f91f99fe78d977675f315b8b99" name="a4d0792f91f99fe78d977675f315b8b99"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4d0792f91f99fe78d977675f315b8b99">&#9670;&#160;</a></span>io_i2c_write()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint8_t io_i2c_write </td>
          <td>(</td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>wait</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>IO 模拟标准 I2C, 主设备写入一个数据 </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">data</td><td>: 要写的数据 </td></tr>
    <tr><td class="paramname">wait</td><td>: 此参数暂无作用, 是为了与硬件 I2C 库函数接口保持一致 </td></tr>
  </table>
  </dd>
</dl>
<dl class="retval"><dt>返回值</dt><dd>
  <table class="retval">
    <tr><td class="paramname">1</td><td>: 接收到 ACK </td></tr>
    <tr><td class="paramname">0</td><td>: 接收到 NACK </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">在文件 <a class="el" href="dev__io__i2c_8c_source.html">dev_io_i2c.c</a> 第 <a class="el" href="dev__io__i2c_8c_source.html#l00168">168</a> 行定义.</p>
<div class="dynheader">
函数调用图:</div>
<div class="dyncontent">
<div class="center"><img src="dev__io__i2c_8c_a4d0792f91f99fe78d977675f315b8b99_cgraph.png" border="0" usemap="#adev__io__i2c_8c_a4d0792f91f99fe78d977675f315b8b99_cgraph" alt=""/></div>
<map name="adev__io__i2c_8c_a4d0792f91f99fe78d977675f315b8b99_cgraph" id="adev__io__i2c_8c_a4d0792f91f99fe78d977675f315b8b99_cgraph">
<area shape="rect" title="IO 模拟标准 I2C, 主设备写入一个数据" alt="" coords="5,31,96,56"/>
<area shape="rect" href="dev__io__i2c_8c.html#a268a94eb25b4c8a9d88a83259930b2df" title="I2C 主设备传输 8 位数据" alt="" coords="144,5,267,31"/>
<area shape="rect" href="dev__io__i2c_8c.html#a507c871d4232488d9f36c335cea78bad" title="I2C 主设备接收应答信号" alt="" coords="148,55,263,80"/>
<area shape="rect" href="dev__io__i2c_8c.html#ab80cac38a78cf222153cd721d4801a3a" title="IIC 通讯的延时保持" alt="" coords="315,31,409,56"/>
</map>
</div>

</div>
</div>
<a id="addb2a5d40257d803646950da9167bccb" name="addb2a5d40257d803646950da9167bccb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#addb2a5d40257d803646950da9167bccb">&#9670;&#160;</a></span>io_i2c_stop()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void io_i2c_stop </td>
          <td>(</td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>wait</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>IO 模拟标准 I2C, 主设备产生停止信号 </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">wait</td><td>: 此参数暂无作用, 是为了与硬件 I2C 库函数接口保持一致 </td></tr>
  </table>
  </dd>
</dl>
<dl class="retval"><dt>返回值</dt><dd>
  <table class="retval">
    <tr><td class="paramname">/</td><td></td></tr>
  </table>
  </dd>
</dl>

<p class="definition">在文件 <a class="el" href="dev__io__i2c_8c_source.html">dev_io_i2c.c</a> 第 <a class="el" href="dev__io__i2c_8c_source.html#l00179">179</a> 行定义.</p>
<div class="dynheader">
函数调用图:</div>
<div class="dyncontent">
<div class="center"><img src="dev__io__i2c_8c_addb2a5d40257d803646950da9167bccb_cgraph.png" border="0" usemap="#adev__io__i2c_8c_addb2a5d40257d803646950da9167bccb_cgraph" alt=""/></div>
<map name="adev__io__i2c_8c_addb2a5d40257d803646950da9167bccb_cgraph" id="adev__io__i2c_8c_addb2a5d40257d803646950da9167bccb_cgraph">
<area shape="rect" title="IO 模拟标准 I2C, 主设备产生停止信号" alt="" coords="5,5,93,31"/>
<area shape="rect" href="dev__io__i2c_8c.html#a2f2fd2dc0cabe8d5843a078348d9920f" title="IIC 主设备产生停止信号" alt="" coords="141,5,271,31"/>
<area shape="rect" href="dev__io__i2c_8c.html#ab80cac38a78cf222153cd721d4801a3a" title="IIC 通讯的延时保持" alt="" coords="319,5,413,31"/>
</map>
</div>

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
制作者&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.5
</small></address>
</body>
</html>
